//
//  ViewController.m
//  08-UITableView
//
//  Created by GivenBmli on 16/7/25.
//  Copyright © 2016年 GivenBmli. All rights reserved.
//

#import "ViewController.h"
#import "UIView+Frame.h"

#define kTableViewReuse @"reuseIdentifier"
// 必须签订UITableViewDelegate UITableViewDataSource
@interface ViewController ()<UITableViewDelegate, UITableViewDataSource>
// 计数器
@property (nonatomic , assign)NSInteger numberCount;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
//    隐藏navigation
    
    self.navigationController.navigationBarHidden = YES;
//    UITableView
//    1.基本创建
    UITableView *tableView = [[UITableView alloc]initWithFrame:self.view.bounds style:UITableViewStylePlain];
    
    [self.view addSubview:tableView];
//    tableView默认创建alwaysBounceVertical为开启状态
//    tableView.alwaysBounceVertical = YES;
//    2.相关属性
//    直接设置,行高(44)
    tableView.rowHeight = 44 ;
//    预估高度
//    分割线颜色
    tableView.separatorColor = [UIColor redColor];
//    分割线样式
//        设置隐藏分割线样式UITableViewCellSeparatorStyleNone
//        默认:UITableViewCellSeparatorStyleSingleLine
//    tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
//    tableView头视图
//    headerView的 x,y 不影响其他位置
//    一般用来放轮播图 , 个人资料
//    UIView *headView = [[UIView alloc]initWithFrame:CGRectMake(1000, 1000, self.view.ml_width, 200)];
//    headView.backgroundColor  = [UIColor greenColor];
//    如果tableHeaderView要进行频繁修改,必须加上
//    beginUpdates
//    endUpdates
//    [tableView beginUpdates];
//    tableView.tableHeaderView = headView;
//    [tableView endUpdates];
    
//    footerView x会对尾视图产生影响,y不会
//    UIView *footerView = [[UIView alloc]initWithFrame:CGRectMake(1000, 1000, self.view.ml_width, 400)];
//    footerView.backgroundColor = [UIColor orangeColor];
//    [tableView beginUpdates];
//    tableView.tableFooterView = footerView;
//    [tableView endUpdates];
    
//    隐藏 多余 tableView 空Cell
//    空cell 一般出现在一个界面只展示几条数据,并不占满整个屏幕
    tableView.tableFooterView = [[UIView alloc]init];
    
//    tableView 数据展示
//    delegate 代理 帮助 tableView 执行一些事件
//    dataSource 数据源 用来给tableView 展示数据
    tableView.delegate = self;
    tableView.dataSource = self;
}
// 返回数据源个数
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return  40;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
// 返回数据源Cell 的样式
//     从重用池取出对应的标识的cell
//    cell 创建一 直接创建
//    UITableViewCell *cell =  [tableView dequeueReusableCellWithIdentifier:kTableViewReuse];
////     如果重用池中取出的cell为空, 创建新的cell
    //     cell 创建二 从重用池
//    if (cell == nil) {
//        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:kTableViewReuse];
//        _numberCount++;
//        NSLog(@"创建新cell----%@ --- %ld", cell, _numberCount);
//    }else {
//        NSLog(@"重用cell -- %@ ---- %ld",cell, _numberCount);
//    }
//     cell 创建方式三 通过regioserClass 方式创建
//    注意:cell
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kTableViewReuse];
    cell.backgroundColor = [UIColor yellowColor];
    

    
    
//    Cell 的属性
//    cell stayw1
//    UITableViewCellStyleDefault cell默认Style 没有标题
//    UITableViewCellStyleValue1 最左边的主标题 (黑) 最右边的副标题(灰)
//    UITableViewCellStyleValue2 小字号, 蓝色主标题, 黑色副标题,主副标题紧挨
//    UITableViewCellStyleSubtitle 主副标题上下紧挨,主标题字号大, 副标题字号小
//    cell 主标题
    cell.textLabel.text = @"嘿嘿";
//    cell 副标题
    cell.detailTextLabel.text = @"我呵呵了";
//    cell 的图片
    cell.imageView.image = [UIImage imageNamed:@"0"];
    return  cell;
}


- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
